﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using CommonClasses.Logger;

namespace CommonClasses.Utility
{
    /// <summary>
    /// Утилитные методы для работы с исключительными ситуациями
    /// </summary>
    public static class ExceptionUtility
    {
        /// <summary>
        /// Залоггировать исключительную ситуацию с помощью указанного логгера
        /// </summary>
        /// <param name="source">Исключительная ситуация для логгирования</param>
        /// <param name="logger">Логгер, с помощтю которого залоггировать</param>
        public static void LogWith(this Exception source, ILogger logger)
        {
            try
            {
                throw source;
            }
            catch (Exception ex)
            {
                logger.WriteException(ex);
            }
        }
    }
}
